#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <algorithm>

using namespace std;

const int MAXN=200005;

struct node
{
	int v, idx;
};

int pre[MAXN], next[MAXN];
node A[MAXN];
int N;

bool cmp(const node &a, const node &b)
{
	if (a.v==b.v) return (a.idx<b.idx);
	else return (a.v<b.v);
}

bool solve(int l, int r)
{
	if (l>=r) return false;
	int i=l, j=r;
	while (i<=j)
	{
		if (pre[i]<l&&next[i]>r) return (solve(l, i-1)||solve(i+1, r));
		if (pre[j]<l&&next[j]>r) return (solve(l, j-1)||solve(j+1, r));
		i++, j--;
	}
	return true;
}

int main()
{
	int T;
	scanf("%d", &T);
	while (T--)
	{
		scanf("%d", &N);
		for (int i=0; i<N; i++)
		{
			scanf("%d", &A[i].v);
			A[i].idx=i;
		}
		sort(A, A+N, cmp);
		for (int i=0; i<N; i++) pre[i]=-1, next[i]=N;
		for (int i=1; i<N; i++)
			if (A[i].v==A[i-1].v)
			{
				pre[A[i].idx]=A[i-1].idx;
				next[A[i-1].idx]=A[i].idx;
			}
		bool flag=solve(0, N-1);
		if (flag) puts("boring");
		else puts("non-boring");
	}
	return 0;
}
